﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IOA.MES.Client.Models.Response
{
    public class GetFinalInspectDataResponse
    {
        /// <summary>
        /// 工单号
        /// </summary>
        public string WokrOrderNo { get; set; }

        /// <summary>
        /// EL2图片
        /// </summary>
        public string El2Image { get; set; }

        /// <summary>
        /// 组件颜色
        /// </summary>
        public string ComponentColorCode { get; set; }

        /// <summary>
        /// 组件颜色
        /// </summary>
        public string ComponentColor { get; set; }


        /// <summary>
        /// 分档方案
        /// </summary>
        public string SchemaName { get; set; }

        /// <summary>
        /// 铭牌型号
        /// </summary>
        public string NameplateModel { get; set; }

        /// <summary>
        /// 降级信息
        /// </summary>
        public string Downgrade { get; set; }

        /// <summary>
        /// 组件等级
        /// </summary>
        public string QLevel { get; set; }

        /// <summary>
        /// EL2图片
        /// </summary>
        public IvData IvData { get; set; }

        /// <summary>
        /// 铭牌数据
        /// </summary>
        public List<KeyValuePair<string, string>> NameplatData { get; set; }
    }

    public class IvData
    {
        private string _barCode = string.Empty;
        private string _ckTemp = string.Empty;
        private string _rank = string.Empty;
        private string _manuf = string.Empty;
        private string _modType = string.Empty;
        private string _sTime = string.Empty;
        private string _sDirection = string.Empty;
        private string _irrCali = string.Empty;
        private string _ivCurrentLevel;
        private string _testTime;

        ///<Summary>
        /// BarCode
        ///</Summary>
        public string BarCode
        {
            get { return string.IsNullOrWhiteSpace(_barCode) ? string.Empty : _barCode; }
            set { _barCode = value; }
        }

        /// <summary>
        /// 功率档
        /// </summary>
        public decimal? IVPowerLevel { get; set; }

        ///<Summary>
        /// 电流档
        ///</Summary>
        public string IVCurrentLevel
        {
            get { return string.IsNullOrWhiteSpace(_ivCurrentLevel) ? string.Empty : _ivCurrentLevel; }
            set { _ivCurrentLevel = value; }
        }

        ///<Summary>
        /// Temp
        ///</Summary>
        public decimal? Temp { get; set; }

        ///<Summary>
        /// CkTemp
        ///</Summary>
        public string CkTemp
        {
            get { return string.IsNullOrWhiteSpace(_ckTemp) ? string.Empty : _ckTemp; }
            set { _ckTemp = value; }
        }

        ///<Summary>
        /// EnvTemp
        ///</Summary>
        public decimal? EnvTemp { get; set; }

        ///<Summary>
        /// Voc
        ///</Summary>
        public decimal? Voc { get; set; }

        ///<Summary>
        /// Isc
        ///</Summary>
        public decimal? Isc { get; set; }

        ///<Summary>
        /// Pmax
        ///</Summary>
        public decimal? Pmax { get; set; }

        ///<Summary>
        /// Vm
        ///</Summary>
        public decimal? Vm { get; set; }

        ///<Summary>
        /// Im
        ///</Summary>
        public decimal? Im { get; set; }

        ///<Summary>
        /// FF
        ///</Summary>
        public decimal? FF { get; set; }

        ///<Summary>
        /// NCell
        ///</Summary>
        public decimal? NCell { get; set; }

        ///<Summary>
        /// Ress
        ///</Summary>
        public decimal? Ress { get; set; }

        ///<Summary>
        /// Ressh
        ///</Summary>
        public decimal? Ressh { get; set; }

        ///<Summary>
        /// TestTime
        ///</Summary>
        public string TestTime
        {
            get { return string.IsNullOrWhiteSpace(_testTime) ? string.Empty : _testTime; }
            set { _testTime = value; }
        }

        ///<Summary>
        /// NModule
        ///</Summary>
        public decimal? NModule { get; set; }

        ///<Summary>
        /// Rank
        ///</Summary>
        public string Rank
        {
            get { return string.IsNullOrWhiteSpace(_rank) ? string.Empty : _rank; }
            set { _rank = value; }
        }

        ///<Summary>
        /// ModEff
        ///</Summary>
        public decimal? ModEff { get; set; }

        ///<Summary>
        /// Rsh
        ///</Summary>
        public decimal? Rsh { get; set; }

        ///<Summary>
        /// Rs
        ///</Summary>
        public decimal? Rs { get; set; }

        ///<Summary>
        /// Ipm
        ///</Summary>
        public decimal? Ipm { get; set; }

        ///<Summary>
        /// Vpm
        ///</Summary>
        public decimal? Vpm { get; set; }

        ///<Summary>
        /// TMod
        ///</Summary>
        public decimal? TMod { get; set; }

        ///<Summary>
        /// Insol
        ///</Summary>
        public decimal? Insol { get; set; }

        ///<Summary>
        /// SunRef
        ///</Summary>
        public decimal? SunRef { get; set; }

        ///<Summary>
        /// Irev
        ///</Summary>
        public decimal? Irev { get; set; }

        ///<Summary>
        /// Ivld
        ///</Summary>
        public decimal? Ivld { get; set; }

        ///<Summary>
        /// Vld
        ///</Summary>
        public decimal? Vld { get; set; }

        ///<Summary>
        /// StdIsc
        ///</Summary>
        public decimal? StdIsc { get; set; }

        ///<Summary>
        /// Manuf
        ///</Summary>
        public string Manuf
        {
            get { return string.IsNullOrWhiteSpace(_manuf) ? string.Empty : _manuf; }
            set { _manuf = value; }
        }

        ///<Summary>
        /// Pvld
        ///</Summary>
        public decimal? Pvld { get; set; }

        ///<Summary>
        /// ModType
        ///</Summary>
        public string ModType
        {
            get { return string.IsNullOrWhiteSpace(_modType) ? string.Empty : _modType; }
            set { _modType = value; }
        }

        ///<Summary>
        /// Area
        ///</Summary>
        public decimal? Area { get; set; }

        ///<Summary>
        /// Jsc
        ///</Summary>
        public decimal? Jsc { get; set; }

        ///<Summary>
        /// RCTemp
        ///</Summary>
        public decimal? RCTemp { get; set; }

        ///<Summary>
        /// STime
        ///</Summary>
        public string STime
        {
            get { return string.IsNullOrWhiteSpace(_sTime) ? string.Empty : _sTime; }
            set { _sTime = value; }
        }

        ///<Summary>
        /// SDirection
        ///</Summary>
        public string SDirection
        {
            get { return string.IsNullOrWhiteSpace(_sDirection) ? string.Empty : _sDirection; }
            set { _sDirection = value; }
        }

        ///<Summary>
        /// IrrCali
        ///</Summary>
        public string IrrCali
        {
            get { return string.IsNullOrWhiteSpace(_irrCali) ? string.Empty : _irrCali; }
            set { _irrCali = value; }
        }
    }
}
